package com.pfzy.ui.activity.refresh;

/**
 * 刷新模式
 */
public enum RefreshMode {
    /**
     * 禁用所有下拉和刷新手势和刷新处理
    */
    DISABLED,

    /**
     * 仅允许用户从可刷新视图的开头拉取以刷新，起点为顶部或左侧,取决于滚动方向。
     */
    PULL_FROM_START,

    /**
     * 仅允许用户从可刷新视图的末尾拉取以刷新。
     * 开始位置是底部或右侧，具体取决于滚动方向。
     */
    PULL_FROM_END,

    /**
     * 允许用户从一开始就拉动, 从结束到刷新
     */
    BOTH;

    static RefreshMode getDefault() {
        return PULL_FROM_START;
    }

    boolean permitsPullToRefresh() {
        return !(this == DISABLED);
    }
    boolean permitsPullFromStart() {
        return (this == RefreshMode.BOTH || this == RefreshMode.PULL_FROM_START);
    }
    boolean permitsPullFromEnd() {
        return (this == RefreshMode.BOTH || this == RefreshMode.PULL_FROM_END);
    }
}
